//
#import <BridgeKit/BKObject.h>

@interface BKValue : BKTypedObject
{
	NSInteger _cArrayLengthInArg;
	NSInteger _cArrayOfFixedLength;
	BOOL _cArrayDelimitedByNull;
	BOOL _cArrayOfVariableLength;
	BOOL _functionPointer;
}

@end


@interface BKReturnValue : BKValue
{
	BOOL _alreadyRetained;
}

+ (id) voidReturnValueWithSignatures: (BKSignatures*) sigs;
- (id) initWithXMLElement: (NSXMLElement*) elem signatures: (BKSignatures*) sigs;

@end


@interface BKArgument : BKValue
{
	NSInteger _index;
	NSString* _typeModifier;
//	NSInteger _cArrayLengthInRetVal;
	BOOL _nullAccepted;
	BOOL _printfFormat;
	NSString* _selOfType;
}

- (id) initWithXMLElement: (NSXMLElement*) elem signatures: (BKSignatures*) sigs;

@property NSInteger index;

@end
